package com.easylinkin.linkappapi.childhospital.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import lombok.Data;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

/**
 * @ClassName: DormitoryManageRoom
 * @Description:
 * @Author: YanQiang
 * @Date: 2024/3/19 11:48
 * @Version: 1.0
 */

@Data
@TableName("child_hospital_room")
public class DormitoryManageRoom extends Model<DormitoryManageRoom> {
    /**
     * 主键
     */
    private String id;

    /**
     * 儿童医院楼层id
     */
    private String floorId;

    /**
     * 房间名称
     */
    private String roomName;

    /**
     * 房间床位数
     */
    private Integer roomNumber;

    /**
     * 房间已用床位数
     */
    private Integer roomUsedNumber;

    /**
     * 房间入住人员标签
     */
    private String roomLabel;

    /**
     * 性别 1--男 2--女
     */
    private Integer sex;

    /**
     * 是否入住 0--空 1--入住
     */
    private String roomStatus;

    /**
     * 创建时间
     */
    private Date createTime;

    /**
     * 更新时间
     */
    private Date modifyTime;

    /**
     * 租户id
     */
    private String tenantId;

    /**
     * 创建人
     */
    private String creator;

    /**
     * 更新人
     */
    private String modifier;

    /**
     * 当前人数
     */
    @TableField(exist = false)
    private Integer current = 0;

    /**
     * 总人数
     */
    @TableField(exist = false)
    private Integer total = 0;

    @TableField(exist = false)
    private List<DormitoryManageUser> dormitoryManageUserList = new ArrayList<>();


    public DormitoryManageRoom() {
    }

    public DormitoryManageRoom(String id, String floorId, String roomName, Integer roomNumber, Integer roomUsedNumber, String roomLabel, Integer sex, String roomStatus) {
        this.id = id;
        this.floorId = floorId;
        this.roomName = roomName;
        this.roomNumber = roomNumber;
        this.roomUsedNumber = roomUsedNumber;
        this.roomLabel = roomLabel;
        this.sex = sex;
        this.roomStatus = roomStatus;
    }

    /**
     * 标识 0：删除，1：修改，2：新增
     */
    @TableField(exist = false)
    private Integer flagStatus = 1;

}
